package com.jxd.petMgr.main;


import com.jxd.petMgr.model.Pet;
import com.jxd.petMgr.model.PetOwner;
import com.jxd.petMgr.model.PetStore;
import com.jxd.petMgr.service.IPetOwnerService;
import com.jxd.petMgr.service.IPetService;
import com.jxd.petMgr.service.IPetStoreService;
import com.jxd.petMgr.service.impl.PetOwnerServiceImpl;
import com.jxd.petMgr.service.impl.PetServiceImpl;
import com.jxd.petMgr.service.impl.PetStoreServiceImpl;

import java.util.List;
import java.util.Scanner;

/**
 * @author lzh
 * @version 1.0
 * @Description
 * @date 2021/11/3
 */


public class PetManager {
    Scanner input = new Scanner(System.in);
    IPetOwnerService petOwnerService = new PetOwnerServiceImpl();
    IPetStoreService petStoreService = new PetStoreServiceImpl();
    IPetService petService = new PetServiceImpl();

    Pet pet;
    PetOwner petOwner;
    PetStore petStore;


    /**
     * 启动系统
     */
//    public void startPetShop() {
//        System.out.println("宠物商店启动");
//        System.out.println("所有宠物醒来");
//
//        for (int i = 0; i < petService.getAllPet().size(); i++) {
//            String name = petService.getAllPet().get(i).getName();
//            System.out.println("第" + (i + 1) + "个宠物，名字叫：" + name);
//        }
//        System.out.println("************************************");
//        System.out.println();
//        System.out.println("所有主人醒来");
//
//        for (int i = 0; i < petOwnerService.getAllOwenr().size(); i++) {
//            String name = petOwnerService.getAllOwenr().get(i).getName();
//            System.out.println("第" + (i + 1) + "个宠物主人，名字叫：" + name);
//        }
//        System.out.println("************************************");
//        System.out.println();
//        System.out.println("所有宠物商店醒来");
//        for (int i = 0; i < petStoreService.getAllStore().size(); i++) {
//            String name = petStoreService.getAllStore().get(i).getName();
//            System.out.println("我的名字叫：" + name);
//        }
//        System.out.println("************************************");
//        System.out.println("请选择输入登录模式，输入1为宠物主人登录，输入2为宠物商店登录");
//        int option = input.nextInt();
//        switch (option) {
//            case 1:
//                ownerLogin();
//                break;
//            case 2:
//
//                break;
//            default:
//                System.out.println("请输入正确的选项");
//        }
//    }
//
//    /**
//     * 宠物主人登录
//     */
//    public void ownerLogin() {
//        while (true) {
//            System.out.println("请先登录，请您输入主人的名字");
//            String name = input.next();
//            System.out.println("请您输入主人的密码");
//            String password = input.next();
//            petOwner = petOwnerService.login(name, password);
//            if (petOwner != null) {
//                System.out.println("-----恭喜您登录成功------");
//                System.out.println("------您的基本信息------");
//                System.out.println("名字：" + petOwner.getName());
//                System.out.println("元宝数：" + petOwner.getMoney());
//                System.out.println("您可以选择购买或卖出宠物，购买宠物选择1，卖出宠物选择2");
//                int option = input.nextInt();
//                switch (option) {
//                    case 1:
//                        ownerBuy();
//                        break;
//                    case 2:
//                        ownerSell();
//                        break;
//                    default:
//                        System.out.println("请输入正确的数字");
//                }
//                break;
//            } else {
//                System.out.println("账户或密码错误");
//            }
//        }
//    }
//
//    /**
//     * 买宠物
//     */
//    public void ownerBuy() {
//        System.out.println("----请输入要购买的范围，只输入选项编号----");
//        System.out.println("1、购买库存宠物");
//        System.out.println("2、购买新培育宠物");
//        int option = input.nextInt();
//        switch (option) {
//            case 1:
//                buyStock();
//                break;
//            case 2:
//                buyNewBreed();
//                break;
//            default:
//                System.out.println("请输入正确的数字");
//        }
//    }
//
//    /**
//     * 买库存中的宠物
//     */
//    public void buyStock() {
//        //如果集合长度为0则库存中没有宠物
//        if (petService.getAllPetInStock().size() == 0) {
//            System.out.println("没有库存的宠物");
//        } else {
//            System.out.println("以下是库存宠物");
//            for (int i = 0; i < petService.getAllPetInStock().size(); i++) {
//                String name = petService.getAllPetInStock().get(i).getName();
//                String typename = petService.getAllPetInStock().get(i).getTypename();
//                double price = petService.getAllPetInStock().get(i).getPrice();
//                System.out.println("序号" + (i + 1) + "我的名字叫：" + name + " 我是" + typename + "要购买我要花" + price + "个元宝");
//            }
//            System.out.println("----请选择要购买的宠物，并输入序号");
//            int num = input.nextInt();
//            pet = petService.getAllPetInStock().get(num - 1);
//            //判断主人金钱是否足够
//            if (petOwner.getMoney() >= pet.getPrice()) {
//                //宠物的拥有者变为主人
//                pet.setOwner_id(petOwner.getId());
//                if(petOwnerService.buy(pet) && petStoreService.sell(pet)){
//                    System.out.println("购买成功");
//                    System.out.println("您的余额为"+petOwner.getMoney());
//                } else {
//                    System.out.println("购买失败");
//                }
//            } else {
//                System.out.println("您的余额不足");
//            }
//        }
//    }
//

    //4646548465130135
    /**
     * 买新培育的宠物
     */
//    public void buyNewBreed() {
//        //如果集合长度为0则没有新培育的宠物
//        if (petService.getAllPetNewBreed().size() == 0) {
//            System.out.println("没有新培育的宠物");
//        } else {
//            System.out.println("以下是新培育的宠物");
//            for (int i = 0; i < petService.getAllPetNewBreed().size(); i++) {
//                String name = petService.getAllPetNewBreed().get(i).getName();
//                String typename = petService.getAllPetNewBreed().get(i).getTypename();
//                double price = petService.getAllPetNewBreed().get(i).getPrice();
//                System.out.println("序号" + (i + 1) + "我的名字叫：" + name + " 我是" + typename + "要购买我要花" + price + "个元宝");
//            }
//            System.out.println("----请选择要购买的宠物，并输入序号");
//            int num = input.nextInt();
//            pet = petService.getAllPetNewBreed().get(num - 1);
//            //判断主人金钱是否足够
//            if (petOwner.getMoney() >= pet.getPrice()) {
//                //宠物的拥有者变为主人
//                pet.setOwner_id(petOwner.getId());
//                if(petOwnerService.buy(pet) && petStoreService.sell(pet)){
//                    System.out.println("购买成功");
//                    System.out.println("您的余额为"+petOwner.getMoney());
//                } else {
//                    System.out.println("购买失败");
//                }
//            } else {
//                System.out.println("您的余额不足");
//            }
//        }
//    }
////
//
//    /**
//     * 主人卖宠物给商店
//     */
//    public void ownerSell() {
//        List<Pet> petList = petOwnerService.getAllBelongsToPetOwner(petOwner.getId());
//        if (petList.size() == 0) {
//            System.out.println("当前没有宠物可以出售");
//        } else {
//            System.out.println("---我的宠物列表---");
//            for (int i = 0; i < petList.size(); i++) {
//                String name = petList.get(i).getName();
//                String typename = petList.get(i).getTypename();
//                double price = petList.get(i).getPrice();
//                System.out.println("序号" + (i + 1) + "我的名字叫：" + name + " 我是" + typename + "卖出可得" + price + "个元宝");
//            }
//            System.out.println("----请选择要卖出的宠物，并输入序号----");
//            int num = input.nextInt();
//            System.out.println("--您要卖出的宠物信息为--");
//            pet = petList.get(num - 1);
//            System.out.println("宠物的名字叫:" + pet.getName() + " 宠物的类别是" + pet.getTypename());
//            System.out.println("请确认是否卖出：y代表卖出 n代表不卖");
//            String option = input.next();
//            if ("y".equals(option)) {
//                System.out.println("--下面是现有宠物商店，请您选择要卖给买家的序号--");
//                for (int i = 0; i < petStoreService.getAllStore().size(); i++) {
//                    String name = petStoreService.getAllStore().get(i).getName();
//                    System.out.println("序号"+(i+1)+"宠物商店的名字：" + name);
//                }
//                int storeNum = input.nextInt();
//                petStore = petStoreService.getAllStore().get(storeNum - 1);
//                pet.setStore_id(petStore.getId());
//                if(petOwnerService.sell(pet) && petStoreService.buy(pet)){
//                    System.out.println("卖出成功");
//                    System.out.println("您的余额为"+petOwner.getMoney());
//                } else {
//                    System.out.println("卖出失败");
//                }
//            }
//        }
//    }
}
